﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200151B RID: 5403
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class WorkbenchReforgeBuffFuncInfo : IMessage<WorkbenchReforgeBuffFuncInfo>, IMessage, IEquatable<WorkbenchReforgeBuffFuncInfo>, IDeepCloneable<WorkbenchReforgeBuffFuncInfo>, IBufferMessage
	{
		// Token: 0x1700440F RID: 17423
		// (get) Token: 0x0600F1D2 RID: 61906 RVA: 0x00285E03 File Offset: 0x00284003
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<WorkbenchReforgeBuffFuncInfo> Parser
		{
			get
			{
				return WorkbenchReforgeBuffFuncInfo._parser;
			}
		}

		// Token: 0x17004410 RID: 17424
		// (get) Token: 0x0600F1D3 RID: 61907 RVA: 0x00285E0A File Offset: 0x0028400A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return WorkbenchReforgeBuffFuncInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17004411 RID: 17425
		// (get) Token: 0x0600F1D4 RID: 61908 RVA: 0x00285E1C File Offset: 0x0028401C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return WorkbenchReforgeBuffFuncInfo.Descriptor;
			}
		}

		// Token: 0x0600F1D5 RID: 61909 RVA: 0x00285E23 File Offset: 0x00284023
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public WorkbenchReforgeBuffFuncInfo()
		{
		}

		// Token: 0x0600F1D6 RID: 61910 RVA: 0x00285E2C File Offset: 0x0028402C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public WorkbenchReforgeBuffFuncInfo(WorkbenchReforgeBuffFuncInfo other) : this()
		{
			this.canFreeReforge_ = other.canFreeReforge_;
			this.uintReforgeNumValue_ = other.uintReforgeNumValue_;
			this.costData_ = ((other.costData_ != null) ? other.costData_.Clone() : null);
			this.intReforgeNumValue_ = other.intReforgeNumValue_;
			this.freeReforgeNum_ = other.freeReforgeNum_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600F1D7 RID: 61911 RVA: 0x00285E9C File Offset: 0x0028409C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public WorkbenchReforgeBuffFuncInfo Clone()
		{
			return new WorkbenchReforgeBuffFuncInfo(this);
		}

		// Token: 0x17004412 RID: 17426
		// (get) Token: 0x0600F1D8 RID: 61912 RVA: 0x00285EA4 File Offset: 0x002840A4
		// (set) Token: 0x0600F1D9 RID: 61913 RVA: 0x00285EAC File Offset: 0x002840AC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool CanFreeReforge
		{
			get
			{
				return this.canFreeReforge_;
			}
			set
			{
				this.canFreeReforge_ = value;
			}
		}

		// Token: 0x17004413 RID: 17427
		// (get) Token: 0x0600F1DA RID: 61914 RVA: 0x00285EB5 File Offset: 0x002840B5
		// (set) Token: 0x0600F1DB RID: 61915 RVA: 0x00285EBD File Offset: 0x002840BD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint UintReforgeNumValue
		{
			get
			{
				return this.uintReforgeNumValue_;
			}
			set
			{
				this.uintReforgeNumValue_ = value;
			}
		}

		// Token: 0x17004414 RID: 17428
		// (get) Token: 0x0600F1DC RID: 61916 RVA: 0x00285EC6 File Offset: 0x002840C6
		// (set) Token: 0x0600F1DD RID: 61917 RVA: 0x00285ECE File Offset: 0x002840CE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ItemCostData CostData
		{
			get
			{
				return this.costData_;
			}
			set
			{
				this.costData_ = value;
			}
		}

		// Token: 0x17004415 RID: 17429
		// (get) Token: 0x0600F1DE RID: 61918 RVA: 0x00285ED7 File Offset: 0x002840D7
		// (set) Token: 0x0600F1DF RID: 61919 RVA: 0x00285EDF File Offset: 0x002840DF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int IntReforgeNumValue
		{
			get
			{
				return this.intReforgeNumValue_;
			}
			set
			{
				this.intReforgeNumValue_ = value;
			}
		}

		// Token: 0x17004416 RID: 17430
		// (get) Token: 0x0600F1E0 RID: 61920 RVA: 0x00285EE8 File Offset: 0x002840E8
		// (set) Token: 0x0600F1E1 RID: 61921 RVA: 0x00285EF0 File Offset: 0x002840F0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint FreeReforgeNum
		{
			get
			{
				return this.freeReforgeNum_;
			}
			set
			{
				this.freeReforgeNum_ = value;
			}
		}

		// Token: 0x0600F1E2 RID: 61922 RVA: 0x00285EF9 File Offset: 0x002840F9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as WorkbenchReforgeBuffFuncInfo);
		}

		// Token: 0x0600F1E3 RID: 61923 RVA: 0x00285F08 File Offset: 0x00284108
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(WorkbenchReforgeBuffFuncInfo other)
		{
			return other != null && (other == this || (this.CanFreeReforge == other.CanFreeReforge && this.UintReforgeNumValue == other.UintReforgeNumValue && object.Equals(this.CostData, other.CostData) && this.IntReforgeNumValue == other.IntReforgeNumValue && this.FreeReforgeNum == other.FreeReforgeNum && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600F1E4 RID: 61924 RVA: 0x00285F88 File Offset: 0x00284188
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.CanFreeReforge)
			{
				num ^= this.CanFreeReforge.GetHashCode();
			}
			if (this.UintReforgeNumValue != 0U)
			{
				num ^= this.UintReforgeNumValue.GetHashCode();
			}
			if (this.costData_ != null)
			{
				num ^= this.CostData.GetHashCode();
			}
			if (this.IntReforgeNumValue != 0)
			{
				num ^= this.IntReforgeNumValue.GetHashCode();
			}
			if (this.FreeReforgeNum != 0U)
			{
				num ^= this.FreeReforgeNum.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600F1E5 RID: 61925 RVA: 0x00286028 File Offset: 0x00284228
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600F1E6 RID: 61926 RVA: 0x00286030 File Offset: 0x00284230
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600F1E7 RID: 61927 RVA: 0x0028603C File Offset: 0x0028423C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.IntReforgeNumValue != 0)
			{
				output.WriteRawTag(72);
				output.WriteInt32(this.IntReforgeNumValue);
			}
			if (this.costData_ != null)
			{
				output.WriteRawTag(82);
				output.WriteMessage(this.CostData);
			}
			if (this.CanFreeReforge)
			{
				output.WriteRawTag(96);
				output.WriteBool(this.CanFreeReforge);
			}
			if (this.FreeReforgeNum != 0U)
			{
				output.WriteRawTag(112);
				output.WriteUInt32(this.FreeReforgeNum);
			}
			if (this.UintReforgeNumValue != 0U)
			{
				output.WriteRawTag(120);
				output.WriteUInt32(this.UintReforgeNumValue);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600F1E8 RID: 61928 RVA: 0x002860EC File Offset: 0x002842EC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.CanFreeReforge)
			{
				num += 2;
			}
			if (this.UintReforgeNumValue != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.UintReforgeNumValue);
			}
			if (this.costData_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.CostData);
			}
			if (this.IntReforgeNumValue != 0)
			{
				num += 1 + CodedOutputStream.ComputeInt32Size(this.IntReforgeNumValue);
			}
			if (this.FreeReforgeNum != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.FreeReforgeNum);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600F1E9 RID: 61929 RVA: 0x00286180 File Offset: 0x00284380
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(WorkbenchReforgeBuffFuncInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.CanFreeReforge)
			{
				this.CanFreeReforge = other.CanFreeReforge;
			}
			if (other.UintReforgeNumValue != 0U)
			{
				this.UintReforgeNumValue = other.UintReforgeNumValue;
			}
			if (other.costData_ != null)
			{
				if (this.costData_ == null)
				{
					this.CostData = new ItemCostData();
				}
				this.CostData.MergeFrom(other.CostData);
			}
			if (other.IntReforgeNumValue != 0)
			{
				this.IntReforgeNumValue = other.IntReforgeNumValue;
			}
			if (other.FreeReforgeNum != 0U)
			{
				this.FreeReforgeNum = other.FreeReforgeNum;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600F1EA RID: 61930 RVA: 0x00286224 File Offset: 0x00284424
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600F1EB RID: 61931 RVA: 0x00286230 File Offset: 0x00284430
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 82U)
				{
					if (num == 72U)
					{
						this.IntReforgeNumValue = input.ReadInt32();
						continue;
					}
					if (num == 82U)
					{
						if (this.costData_ == null)
						{
							this.CostData = new ItemCostData();
						}
						input.ReadMessage(this.CostData);
						continue;
					}
				}
				else
				{
					if (num == 96U)
					{
						this.CanFreeReforge = input.ReadBool();
						continue;
					}
					if (num == 112U)
					{
						this.FreeReforgeNum = input.ReadUInt32();
						continue;
					}
					if (num == 120U)
					{
						this.UintReforgeNumValue = input.ReadUInt32();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04005F6E RID: 24430
		private static readonly MessageParser<WorkbenchReforgeBuffFuncInfo> _parser = new MessageParser<WorkbenchReforgeBuffFuncInfo>(() => new WorkbenchReforgeBuffFuncInfo());

		// Token: 0x04005F6F RID: 24431
		private UnknownFieldSet _unknownFields;

		// Token: 0x04005F70 RID: 24432
		public const int CanFreeReforgeFieldNumber = 12;

		// Token: 0x04005F71 RID: 24433
		private bool canFreeReforge_;

		// Token: 0x04005F72 RID: 24434
		public const int UintReforgeNumValueFieldNumber = 15;

		// Token: 0x04005F73 RID: 24435
		private uint uintReforgeNumValue_;

		// Token: 0x04005F74 RID: 24436
		public const int CostDataFieldNumber = 10;

		// Token: 0x04005F75 RID: 24437
		private ItemCostData costData_;

		// Token: 0x04005F76 RID: 24438
		public const int IntReforgeNumValueFieldNumber = 9;

		// Token: 0x04005F77 RID: 24439
		private int intReforgeNumValue_;

		// Token: 0x04005F78 RID: 24440
		public const int FreeReforgeNumFieldNumber = 14;

		// Token: 0x04005F79 RID: 24441
		private uint freeReforgeNum_;
	}
}
